利用Katalon Studio for functional testing, regression testing
可以寫程式也可以不寫,可以用它來寫test cases、執行test cases和分析你的測試結果。
可以整合CI/CD, JIRA, GITHUB等
下載並安裝Katalon
開啟軟體
新增project
File -> New -> Project
MyFirstProject
Project -> Settings
Take Screenshot when execution failed
record & spy
https://katalon-demo-cura.herokuapp.com/
測試Katalon提供的sample網站
有兩種模式:Manual、Script
Add
有很多action可以選
新增一行
WebUI.back()
則會發現多了一個back action
所以這兩個是一樣的可以互通
移除掉現有所有Item
新增open browser的action
Input
url = https://katalon-demo-cura.herokuapp.com/
執行 -> 確認初始化成功
會自動打開頁面
新增測試步驟
這次使用Script示範WebUI.verifyMatch(WebUI.getWindowTitle(), 'CURA Healthcare Service', false)
切回Manual檢查
新增click actionWebUI.click(findTestObject)
利用spy web來選取物件
Mouse over navbar menu and send ALT + ` key and go to login option and go on
Change Object Name
可以用Verify and Highlight來檢查是否有抓正確
Save
將findTestObject改為 SideHamburgerMenu和LoginButton
WebUI.click(findTestObject('Object Repository/Page_CURA Healthcare Service/SideHamburgerMenu'))
WebUI.click(findTestObject('Object Repository/Page_CURA Healthcare Service/LoginButton'))
新增close browser
執行
Test Listeners -> New -> New Test Listeners
Listener Script
將openBrowser的code移到 @BeforeTestSuite
/**
* Executes before every test suite starts.
* @param testSuiteContext: related information of the executed test suite.
*/
@BeforeTestSuite
def sampleBeforeTestSuite(TestSuiteContext testSuiteContext) {
println testSuiteContext.getTestSuiteId()
WebUI.openBrowser('https://katalon-demo-cura.herokuapp.com/')
}
將closeBrowser的code移到 @AfterTestSuite
/**
* Executes after every test suite ends.
* @param testSuiteContext: related information of the executed test suite.
*/
@AfterTestSuite
def sampleAfterTestSuite(TestSuiteContext testSuiteContext) {
println testSuiteContext.getTestSuiteId()
WebUI.closeBrowser()
}
檢視更改成果
新增Test Suite
將Navigation新增到test suite中
執行test suite
在Test case最後新增一行
WebUI.takeScreenshot('screenshots/screen1.png')
執行test suite
可以從資料夾中找到screenshot
可以從Results看到測試結果
本文章同步發布於個人blogger。